﻿Imports Commander_Wars.Spieletools
''' <summary>
''' Wird zu erstellen des KO's Sensei verwendet copyright Nintendo und Intelligent System
''' </summary>
''' <remarks></remarks>
<Serializable()> Public Class KOSensei
    Inherits ObjektKO
    Public Sub New(ByVal Spieler As Integer)
        MyBase.New(Spieler, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub
    Public Sub New(ByVal Spieler As Integer, ByVal Gabefüllstand As Integer, ByVal Gabenart As Gabemodi, ByVal neuSternkosten As Integer)
        MyBase.New(Spieler, Gabefüllstand, Gabenart, neuSternkosten, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub

    Private Sub StartwerteLaden()
        KOID = "SENSEI"
        Armee = Armeen.YC.ToString
        Musik = "Sensei"
        Bild = GetBildID()
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                Gaben(1) = Gaben(0)
            Case CommanderWarsGameModi.AdvanceWars2
                Sternkosten = 1000
                Gabekosten = 2
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDS
                Sternkosten = 1000
                Gabekosten = 2
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDC
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 6
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                KORange = 3
            Case CommanderWarsGameModi.CommanderWars2
                Sternkosten = 1000
                Gabekosten = 2
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                KORange = 3
            Case Else
                Sternkosten = 1000
                Gabekosten = 2
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
        End Select
        KOname = Objektverwalter.KOS(Bild).KOBeschreibung.Name
        KOLaden()
    End Sub

    Public Overrides Sub KOLaden()
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars2
                OffensivStärke = New FeuerkrafttabelleHelis150UndInf140
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
            Case CommanderWarsGameModi.AdvanceWarsDS
                OffensivStärke = New FeuerkrafttabelleHelis150UndInf110
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
            Case CommanderWarsGameModi.CommanderWars2, CommanderWarsGameModi.AdvanceWarsDC
                OffensivStärke = New FeuerkrafttabelleCustomHelis(150, 100, 120, 100)
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
            Case Else
                OffensivStärke = New FeuerkrafttabelleHelis150
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
        End Select
        If My.Settings.CommanderWarsGameMoodus = CommanderWarsGameModi.AdvanceWarsDC Then
            'Dafür sinkt die Feuerkraft aber drastisch
            WetterReichweitenbonus(0) = 0
        End If
    End Sub

    Public Overrides Function GetBaublockade(ByVal Spieler As Integer) As Baublockade
        Return New Baublockade(Baublockade.BauBlockade.InfantryAir, Spieler)
    End Function

    Public Overrides Sub Gabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars2
                OffensivStärke = New FeuerkrafttabelleHelis180UndInf140
                If OhneFunktion = False Then
                    Fallschrimspringer("INF", 90, "SENSEIGABE")
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.AdvanceWarsDS
                OffensivStärke = New FeuerkrafttabelleHelis180UndInf110
                If OhneFunktion = False Then
                    Fallschrimspringer("INF", 90, "SENSEIGABE")
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.CommanderWars2, CommanderWarsGameModi.AdvanceWarsDC
                OffensivStärke = New FeuerkrafttabelleCustomHelis(180, 100, 130, 100)
                If OhneFunktion = False Then
                    Fallschrimspringer("INF", 90, "SENSEIGABE")
                End If
                GabeEingesetzt()
            Case Else
                OffensivStärke = New FeuerkrafttabelleHelis160
                If OhneFunktion = False Then
                    Fallschrimspringer("INF", 90, "SENSEIGABE")
                End If
                GabeEingesetzt()
        End Select
       
    End Sub

    Public Overrides Sub SpezialGabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars
                OffensivStärke = New FeuerkrafttabelleHelis180UndInf140
                If OhneFunktion = False Then
                    Fallschrimspringer("INF", 90, "SENSEIGABE")
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.AdvanceWars2
                OffensivStärke = New FeuerkrafttabelleHelis180UndInf140
                If OhneFunktion = False Then
                    Fallschrimspringer(MovementSorts.MECH.tostring.toupper, 90, "SPEZIALGABE")
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.AdvanceWarsDS
                OffensivStärke = New FeuerkrafttabelleHelis180UndInf110
                If OhneFunktion = False Then
                    Fallschrimspringer(MovementSorts.MECH.tostring.toupper, 90, "SPEZIALGABE")
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.CommanderWars2, CommanderWarsGameModi.AdvanceWarsDC
                OffensivStärke = New FeuerkrafttabelleCustomHelis(190, 100, 145, 100)
                If OhneFunktion = False Then
                    Fallschrimspringer(MovementSorts.MECH.tostring.toupper, 90, "SENSEIGABE")
                End If
                GabeEingesetzt()
            Case Else
                OffensivStärke = New FeuerkrafttabelleHelis190
                If OhneFunktion = False Then
                    Fallschrimspringer(MovementSorts.MECH.tostring.toupper, 90, "SPEZIALGABE")
                End If
                GabeEingesetzt()
        End Select

       
    End Sub

    Public Overrides Sub KOFrame()
        'Wir machen nichts
    End Sub
End Class

<Serializable()> Public Class KOBeschreibungSensei
    Inherits ObjektKOBeschreibung
    Public Sub New()
        Name = "Sensei"
        Fein = "Faule, Regentage"
        Nein = "=Einkaufsstraßen"
        Beschreibung = New String() {"Ehemaliger Fallschirmspringer, der", "als unbesiegbar galt."}
        Stil = New String() {"Seine Helikopter und Infanteristen", "sind stark alle anderen Einheiten", "sind eher schwach."}
        Gabebeschreibung = New String() {"Infanteristen mit 9 TP erscheinen auf allen", "seinen Städten."}
        SpezialgabeBeschreibung = New String() {"Mech mit 9 TP erscheinen auf allen", "seinen Städten."}
        GabeKosten = 2
        Spezialgabekosten = 4
        Gaben = New String() {"Luftkommando", "Lufthoheit"}
        Synergie = New Decimal() {1, 2, 0.5#, 0.5#, -1, 0.5#, -1, 0.5#, 1, 1}
        KONamen = New String() {"GRIMM", "HACHI", "KANBEI", "JAVIER", "VON BOLT", "SONJA", "RATTIGAN", "PETER", "MINAMOTO", "JARED"}
        Doppelgabenamen = New String() {"Donnerblitz", "Seniorenbündniss", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Veterane", "Doppel-Gabe", "Rolling Thunder"}
        Gabesätze = New String() {"Krieg bringt nie Gutes hervor. Wenn dies vorbei ist lass uns heimgehen." _
                                      , "Ich habe das, was man braucht um euch Jungspunde zu besiegen." _
                                      , "Fallschirmspringer! Macht euch bereit zum springen." _
                                      , "Ha! Ha! Ha! Das wird ein schneller Sieg!" _
                                      , "Schau was Erfahrung dir bringt!" _
                                      , "Ha! Ha! Ich werde nicht alt! Niemals!"}
        Siegsätze = New String() {"Hm hm hmmm... Ich habe immer noch was man zum Siegen braucht." _
                                , "Zeit für ein Schläfchen." _
                                , "Nun können wir die Sachen wider gemütlich angehen."}
        Tauschsätze = New String() {"Der alte Soldat in mir möchte kämpfen." _
                                    , "Oh, Zeit zum tauschen? Junge, das war schnell."}
        Doppelgabesätze = New DoppelGabesatz() {New DoppelGabesatz("GRIMM", "SENSEI", "Achtung. Blitzgrimm im Anmarsch!", "Hey ganz langsam. Ich bin nicht mehr der Jüngste.") _
                                              , New DoppelGabesatz("SENSEI", "GRIMM", "Wir zeigen euch das man auch im Alter noch stark sein kann.", "Yeah! Blitzgrimm kommt.") _
                                              , New DoppelGabesatz("HACHI", "SENSEI", "Kauft bis ihr umfallt! Oder bis ich euch umwerfe.", "Ha! Ha! Ha! Ganz der Geschäftsmann.") _
                                              , New DoppelGabesatz("HACHI", "SENSEI", "Wir müssen diesen Jungspunden zeigen, wie das geht.", "Ja! Das ist korrekt.") _
                                              , New DoppelGabesatz("PETER", "SENSEI", "Sollen wir ihnen etwas beibringen?", "Wir zeigen euch mal wie man kämpft.") _
                                              , New DoppelGabesatz("SENSEI", "PETER", "Das letzte Mal als wir zusammen gekämpft haben war...", "Das ist Ewigkeiten her! Aber wir haben nichts verlernt!") _
                                              , New DoppelGabesatz("JARED", "SENSEI", "Zeit für ein Musikstück.", "Aber bitte was klassiches.") _
                                              , New DoppelGabesatz("JARED", "SENSEI", "Jetzt gibt es ein heißes Stück.", "Erwarte aber nicht, dass ich dazu tanze.")}
    End Sub
End Class
